DJI SOS 1.3
==========

Application Mac de réparation locale de vidéos DJI.
Apple Silicon (puces M1, M2, M3, M4… ou suivantes), macOS 15 ou version ultérieure.

LANGUES

L’application suit les préférences de langue de macOS : français, anglais,
allemand, espagnol, italien, portugais, russe, japonais, coréen, chinois
simplifié et chinois traditionnel (11 choix). Les textes, menus, messages,
rapports et crédits sont disponibles hors ligne. Si aucune langue préférée
n’est prise en charge, l’anglais est utilisé.

Les variantes régionales sont reconnues ; pour le chinois, Taïwan, Hong Kong
et Macao utilisent le traditionnel, la Chine continentale et Singapour le
simplifié, sauf préférence explicite pour un autre système d’écriture.

UTILISATION

1. Ouvrir DJI SOS.app.
2. Glisser la vidéo illisible dans la fenêtre, ou cliquer pour la choisir.
3. Si vous avez une vidéo saine du même appareil avec les mêmes réglages,
   l’ajouter dans « Vidéo de référence ».
4. Cliquer sur « Réparer la vidéo ».
5. Attendre la vérification complète, puis lire la vidéo ou l’afficher dans le Finder.

Une fenêtre « Votre fichier a été réparé » apparaît après une réparation réussie.
Elle donne accès au fichier et propose un don facultatif pour soutenir DJI SOS.
« Continuer » ferme cette fenêtre sans paiement ; la vidéo reste accessible.
Le bouton « Faire un don » ouvre la même page PayPal que RSV SOS dans le navigateur.
Seul ce don nécessite internet : la réparation reste entièrement hors ligne.
La page de don ne reçoit ni vidéo, ni nom de fichier depuis l’application.

Le nouveau MP4 et son rapport sont placés à côté du fichier d’origine.
Un autre dossier peut être choisi dans « Options d’enregistrement ».
Un nom disponible est toujours utilisé : aucun fichier existant n’est remplacé.
La source reste en lecture seule. Les opérations se font entièrement sur le Mac.

CAPACITÉS DE LA VERSION 1.1

• Détection de vidéos H.264/AVC et H.265/HEVC : la reconnaissance n’est plus
  limitée au seul cas 4K à 30 images/s de la première version.
• Prise en compte de différentes définitions et cadences, selon les en-têtes
  réellement disponibles : HD, 2,7K, 4K et autres modes du catalogue.
• Catalogue hors ligne dérivé de djifix 2026-10-31 : 97 choix documentés,
  correspondant à 94 jeux d’en-têtes distincts. Chaque profil candidat doit
  passer un essai de décodage avant d’être utilisé sur le fichier entier.
  Ce catalogue ne constitue pas une certification de tous les modèles DJI.
• Utilisation des paramètres déjà présents dans le fichier lorsqu’ils sont
  complets, sans vidéo de référence ni choix manuel d’un modèle de caméra.
• Lecture de flux avec plusieurs tranches par image et de certaines structures
  MP4 non finalisées ; lecture de flux bruts H.264/H.265 avec leurs en-têtes.
• Avec référence : reconstruction par untrunc pour des fichiers H.264/H.265.
  La référence doit être lisible et correspondre à la caméra et aux réglages.
• Copie vidéo sans réencodage. Le MP4 n’est livré qu’après un décodage intégral
  sans erreur et un contrôle du nombre d’images.

LIMITES

• Un fichier n’est pas récupérable simplement parce que son extension est MP4.
  Il faut des données vidéo exploitables et des paramètres compatibles.
• Le mode automatique demande une référence lorsque les en-têtes et les
  métadonnées disponibles ne permettent pas d’identifier un profil fiable.
• Les vidéos avec images B nécessitent un essai avec référence : la chronologie
  ne peut pas encore être reconstruite en automatique. Certaines de ces vidéos
  peuvent également échouer avec référence ; aucun résultat douteux n’est livré.
• Vidéo entrelacée, AVC partitionné, extensions multivues/multicouches ou
  plusieurs zones mdat : non gérés en automatique, référence conseillée.
• Une image finale tronquée ou dont la fin ne peut pas être certifiée est écartée.
  Les octets jamais enregistrés par la caméra ne peuvent pas être recréés.
• Les pistes internes de télémétrie DJI ne sont pas intégrées au MP4 livré.
  La voie automatique récupère la vidéo seule ; l’original reste disponible
  pour une éventuelle récupération de l’audio ou des données de vol.
• Pour un flux sans chronologie de conteneur, la lecture est reconstruite à
  cadence constante d’après les paramètres disponibles. Si la cadence manque,
  il faut la choisir dans les options ou fournir une référence saine.

VALIDATION

La réparation du clip réel DJI_0063.MP4 de l’Avata première génération est
conservée : 1 940 images, 3840 × 2160, 29,97 i/s, environ 64,731 secondes.
Les nouvelles voies ont été vérifiées sur des fichiers de test générés en
H.264 et H.265, en 1080p, 2,7K, 4K, à plusieurs cadences, avec contrôle de
l’identité des données vidéo et des pixels décodés. Ces tests ne remplacent
pas des essais réels sur chaque modèle de caméra.

CADENCE

Conserver « Automatique » sauf si vous connaissez précisément la cadence
de tournage. Un changement manuel peut changer la vitesse de lecture.
Les détails de la méthode et les limites figurent dans le rapport de réparation.

INSTALLATION

L’application contient djifix, untrunc, FFmpeg et leurs bibliothèques.
Il n’est pas nécessaire d’installer Homebrew, Python ou ces outils pour l’utiliser.
Elle peut être déplacée dans le dossier Applications.

L’édition destinée au site est signée Developer ID et n’est publiée comme
« notariée » qu’après acceptation Apple, agrafage du ticket et contrôles
Gatekeeper. Le ZIP final se termine par « -notarisee.zip » ; le ZIP
« -envoi-Apple.zip » est réservé à la soumission et ne doit pas être distribué.
Une image disque peut aussi être proposée : glisser DJI SOS dans Applications.
Elle transporte l’app munie de son ticket Apple ; le rapport de distribution
précise séparément le statut de l’app et celui du conteneur.
Depuis la version 1.2.1, les outils et bibliothèques sont rangés dans les emplacements
natifs du bundle Mac sans modifier la méthode de réparation.

LICENCE, CRÉDITS ET SOURCES

DJI SOS est un logiciel libre sous GNU GPL version 3 ou ultérieure.
Copyright (C) 2026 Hansley. Aucune garantie. Voir LICENSE et LICENSING.md.

Le menu Aide > Licences et outils intégrés affiche les crédits détaillés.
Le menu Aide > Afficher les sources complètes… révèle le ZIP incorporé dans
l’application. Il contient le code Swift modifiable et les sources exactes
des outils et bibliothèques tiers, leurs licences et les recettes de construction.
Seuls neuf anciens modules MATLAB précompilés inutilisés sont retirés de
l’archive libvmaf ; toutes les sources correspondantes sont conservées.
Les sources se consultent et s’extraient sans connexion internet.

Pour reconstruire, voir REBUILD.md dans l’archive des sources.
Pour redistribuer, conserver l’archive incorporée, les licences et les mentions.
Le dossier Distribution contient aussi une copie séparée de cette même archive.
La version 1.2 ajoute la fenêtre de réussite et le don facultatif à la version
1.1.1, qui a ajouté les licences et sources. Le moteur de réparation reste
celui de la version 1.1. La version 1.3 ajoute les onze langues de l’interface.

Application indépendante ; outils de réparation :
djifix (Live Networks) : https://djifix.live555.com/
untrunc (Federico Ponchio et contributeurs, fork anthwlock) : https://github.com/anthwlock/untrunc
FFmpeg : https://ffmpeg.org/
